Voiceprint authentication method and apparatus

ABSTRACT

The present disclosure provides a voiceprint authentication method and a voiceprint authentication apparatus. The method includes: displaying a first character string to a user, in which the first character string includes a predilection character preset by the user, and the predilection character is displayed as a symbol corresponding to the predilection character in the first character string; obtaining a speech of the first character string read by the user; obtaining a first voiceprint identity vector of the speech of the first character string; comparing the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication.

CROSS REFERENCE TO RELATED APPLICATION

This application claims priority to and benefits of Chinese Patent Application. No. 201510358723.3, filed with State Intellectual Property Office on Jun. 25, 2015, the entire content of which is incorporated herein by reference.

FIELD

The present disclosure generally relates to the field of authentication technology, and more particularly, to a voiceprint authentication method and a voiceprint authentication apparatus.

BACKGROUND

Mobile payment, generally refers to a business transaction realized via the mobile communication network for trading certain goods or service by two transaction parties via mobile terminals. The mobile terminal used in the mobile payment may be a mobile phone, a personal digital assistant (hereinafter referred to as PDA), a mobile personal computer (hereinafter referred to as PC), etc.

In the related art, there are some ways to realize the mobile payment, such as a message payment, a code scanning payment, a fingerprint payment, etc. However, since the safety of the current mobile payment mode (such as, based on password and message authentication) is poor, once the password or the mobile phone is got by others, the payment may be accomplished, thus resulting in user's economic losses and a poor user experience.

SUMMARY

The present disclosure aims to solve at least one of the problems existing in the related art to at least some extent.

Accordingly, a first objective of the present disclosure is to provide a voiceprint authentication method. With the method, by comparing the user's voiceprint with the voiceprint generated during the registration to authenticate the user's identity, the safety of payment is improved, and it is unnecessary to input the password and further to verify the password, thus improving the convenience and the efficiency of payment. Moreover, the characters may be concealed according to the user's predilection, thus satisfying the psychological requirement that the user does not want the password to be displayed in a form of plaintext and further improving the user's experience and the availability of voiceprint password.

A second objective of the present disclosure is to provide a voiceprint authentication apparatus.

In order to achieve above objectives, embodiments of a first aspect of the present disclosure provide a voiceprint authentication method. The method includes: displaying a first character string to a user, in which the first character string includes a predilection character preset by the user, and the predilection character is displayed as a symbol corresponding to the predilection character in the first character string; obtaining a speech of the first character string read by the user; obtaining a first voiceprint identity vector of the speech of the first character string; comparing the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication.

With the voiceprint authentication method according to embodiments of the present disclosure, the character string displayed to the user includes the predilection character preset by the user, and the predilection character is displayed as the symbol in the character string; then the speech of the character string read by the user and the voiceprint identity vector of the speech of the character string are obtained, the voiceprint identity vector of the speech of the character string is compared with the voiceprint identity vector registered by the user to determine the result of the voiceprint authentication. In this way, by comparing the user's voiceprint with the voiceprint generated during the registration to authenticate the user's identity, the safety of payment may be improved, and it is unnecessary to input the password and further to verify the password, thus improving the convenience and the efficiency of payment. Moreover, the character may be concealed according to the user's predilection, thus satisfying the psychological requirement that the user does not want the password to be displayed in a form of plaintext and further improving the user's experience and the availability of voiceprint password.

In order to achieve above objectives, embodiments of a second aspect of the present disclosure provide a voiceprint authentication apparatus. The apparatus includes: a displaying module, configured to display a first character string to a user, in which the first character string includes a predilection character preset by the user, and the predilection character is displayed as a symbol corresponding to the predilection character in the first character string; an obtaining module, configured to obtain a speech of the first character string read by the user, and to obtain a first voiceprint identity vector of the speech of the first character string; a determining module, configured to compare the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication.

In the voiceprint authentication apparatus according to embodiments of the present disclosure, the character string displayed by the displaying module to the user includes the predilection character preset by the user, in which the predilection character is displayed as the symbol in the character string; then the obtaining module obtains the speech of the character string read by the user and the voiceprint identity vector of the speech of the character string, and the determining module compares the voiceprint identity vector of the speech of the character string with the voiceprint identity vector registered by the user to determine the result of the voiceprint authentication. In this way, by comparing the user's voiceprint with the voiceprint generated during the registration to authenticate the user's identity, the safety of payment may be improved, and it is unnecessary to input the password and further to verify the password, thus improving the convenience and the efficiency of payment. Moreover, the character may be concealed according to the user's predilection, thus satisfying the psychological requirement that the user does not want the password to be displayed in a form of plaintext and further improving the user's experience and the availability of voiceprint password.

In order to achieve above objectives, embodiments of a third aspect of the present disclosure provide a program product having stored therein instructions that, when executed by one or more processors of a device, causes the device to perform the method according to the first aspect of the present disclosure.

Additional aspects and advantages of embodiments of present disclosure will be given in part in the following descriptions, become apparent in part from the following descriptions, or be learned from the practice of the embodiments of the present disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other aspects and advantages of embodiments of the present disclosure will become apparent and more readily appreciated from the following descriptions made with reference to the accompanying drawings, in which:

FIG. 1 is a flow chart showing a voiceprint authentication method according to an embodiment of the present disclosure;

FIG. 2 is a flow chart showing a voiceprint authentication method according to another embodiment of the present disclosure;

FIG. 3 is a flow chart showing a registration procedure in a voiceprint authentication method according to an embodiment of the present disclosure;

FIG. 4 is a flow chart showing a registration procedure in a voiceprint authentication method according to another embodiment of the present disclosure;

FIG. 5 is a block diagram illustrating a voiceprint authentication apparatus according to an embodiment of the present disclosure; and

FIG. 6 is a schematic diagram illustrating a voiceprint authentication apparatus according to another embodiment of the present disclosure.

DETAILED DESCRIPTION

Reference will be made in detail to embodiments of the present disclosure. Embodiments of the present disclosure will be shown in drawings, in which the same or similar elements and the elements having same or similar functions are denoted by like reference numerals throughout the descriptions. The embodiments described herein according to drawings are explanatory and illustrative, not construed to limit the present disclosure. In contrast, the present disclosure may include alternatives, modifications and equivalents within the spirit and scope of the appended claims.

FIG. 1 is a flow chart showing a voiceprint authentication method according to an embodiment of the present disclosure. As shown in FIG. 1, this voiceprint authentication method may include the following steps.

In step 101, a first character string is displayed to a user, in which the first character string includes a predilection character preset by the user and the predilection character is displayed as a symbol corresponding to the predilection character in the first character string.

The symbol corresponding to the predilection character is preset by the user. For example, the user may select “1” and “6” as predilection characters from ten numbers of 0˜9, and set that “1” corresponds to symbol “#” and “6” corresponds to symbol “@”, so the character string “8291765” is displayed as “829#7@5”.

In this embodiment, the symbol corresponding to the predilection character may be displayed in different displaying modes, which include but are not limit to the following forms.

1. Special characters, for example, the special characters in the keyboard, such as, “!”, “@”, “#”, “$”, “%”, “̂”, “&”, “*”, “(”, or “)”, etc.

2. Chinese characters, for example, “

”, “

”, or “

”, etc.

3. Pictures, for example, an icon of a fruit, a small animal or a cartoon character, etc.

In step 102, a speech of the first character string read by the user is obtained.

In this example, the speech of “829#7@5” read by the user is obtained.

In step 103, a first voiceprint identity vector of the speech of the first character string is obtained.

Specifically, the first voiceprint identity vector of the speech of the first character string is obtained by performing steps of: extracting an acoustic characteristic of the speech of the first character string; calculating a posteriori probability of the acoustic characteristic under a universal background model, in which the posteriori probability is subject to a Gaussian distribution and an expectation of the posteriori probability is the first voiceprint identity vector.

In step 104, the first voiceprint identity vector is compared with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication.

In the voiceprint authentication method described above, the first character string displayed to the user includes the predilection character preset by the user, in which the predilection character is displayed as the symbol corresponding to the predilection character in the first character string; then the speech of the first character string read by the user and the first voiceprint identity vector of the speech of the first character string are obtained, and the first voiceprint identity vector is compared with the second voiceprint identity vector registered by the user to determine the result of the voiceprint authentication. In this way, by comparing the user's voiceprint with the voiceprint generated during the registration to authenticate the user's identity, the safety of payment may be improved, and it is unnecessary to input the password and further to verify the password, thus improving the convenience and the efficiency of payment. Moreover, the character may be concealed according to the user's predilection, thus satisfying the psychological requirement that the user does not want the password to be displayed in a form of plaintext and further improving the user's experience and the availability of voiceprint password.

FIG. 2 is a flow chart showing a voiceprint authentication method according to another embodiment of the present disclosure. Further, referring to FIG. 2, the voiceprint authentication method further includes the following steps before step 103 (i.e. the first voiceprint identity vector of the speech of the first character string is obtained).

In step 201, a speech recognition is performed on the speech of the first character string to judge whether a speech of the symbol in the speech of the first character string corresponds to the predilection character. If the speech of the symbol in the speech of the first character string corresponds to the predilection character, step 103 is executed; otherwise, step 202 is executed.

In step 202, an error is returned and the error indicates that the speech of the symbol in the speech of the first character string does not correspond to the predilection character.

In other words, during the authentication, the user needs to read one character string, and a server may perform the speech recognition on the speech of this character string read by the user and then judge whether the speech of the symbol in the speech of this character string corresponds to the predilection character preset by the user. Only when the user reads the predilection character in a correct way, the speech of this character string is further authenticated to obtain a voiceprint identity vector of the speech of this character string.

To prevent the fraud with sound recording, a completely random character string may be adopted during the authentication. In order to enable a character string read during the authentication to be close to the voiceprint identity vector registered by the user, the character string may include characters displayed in a form of plaintext. However, in this embodiment, the characters displayed in the form of plaintext may appear only once, i.e. one in the characters displayed in the form of plaintext is not identical to another one in the characters displayed in the form of plaintext and a predilection character concealed by a symbol may be not identical to anyone in the characters displayed in the form of plaintext (case one), or be identical to one in the characters displayed in the form of plaintext (case two). For example, when the predilection character is “1” corresponding to the symbol “#”, a character string may be displayed as “2#763985” (case one), or “2#763915” (case two).

Specifically, the authentication procedure includes three phases: a signal processing, a voiceprint comparison and a consistency judgment. The signal processing includes a signal pre-emphasis, a voice activity detection (hereinafter referred to as VAD), an acoustic characteristic extracting and a characteristic processing on the speech of the character string read by the user, etc.

The voiceprint comparison and the consistency judgment refer to step 104, in which the first voiceprint identity vector is compared with the second voiceprint identity vector registered by the user to determine the result of the voiceprint authentication. Specifically, referring to FIG. 2, step 104 may include the following steps.

In step 203, a matching value between the first voiceprint identity vector and the second voiceprint identity vector registered by the user is calculated.

Specifically, the matching value between the first voiceprint identity vector and the second voiceprint identity vector registered by the user may be calculated by: comparing the first voiceprint identity vector (identity vector, hereinafter referred to as ivector) generated during the authentication with the second voiceprint ivector generated during the registration and scoring according to a comparison result. In specific implementations, cosine distance, Support Vector Machine (hereinafter referred to as SVM), Bayesian Classifier or Gauss Probabilistic Linear Discriminant Analysis (hereinafter referred to as GPLDA) may be adopted. In the following, the comparing and scoring procedure will be described by taking GPLDA method as an example.

It is assumed that the first voiceprint ivector during the authentication is expressed by η₁, and the second voiceprint ivector stored in the server during the registration is expressed by η₂. There may be two assumptions: H₁ indicates that the person who reads the first character string is the registered user, and H₀ indicates that the person who read the first character string is different from the registered user. Therefore, the logarithmic likelihood ratio of this hypothesis testing is obtained according to formula (1),

$\begin{matrix} {{score} = {\log \frac{P\left( {\eta_{1},{\eta_{2}H_{1}}} \right)}{{P\left( {\eta_{1}H_{0}} \right)}{P\left( {\eta_{2}H_{0}} \right)}}}} & (1) \end{matrix}$

here, assuming that the conditional probability distributions of both the numerator and the denominator are subject to a Gaussian distribution and the expectations thereof both are 0. Therefore, formula (1) may be simplified as formula (2),

$\begin{matrix} {\begin{matrix} {{score} = {{\log \; {N\left( {{{\begin{bmatrix} \eta_{1} \\ \eta_{2} \end{bmatrix};}\begin{bmatrix} 0 \\ 0 \end{bmatrix}}\begin{bmatrix} \sum_{tot} & \sum_{ac} \\ \sum_{ac} & \sum_{tot} \end{bmatrix}} \right)}} - {\log \; N}}} \\ {{\log \; {N\left( {{{\begin{bmatrix} \eta_{1} \\ \eta_{2} \end{bmatrix};}\begin{bmatrix} 0 \\ 0 \end{bmatrix}}\begin{bmatrix} \sum_{tot} & 0 \\ 0 & \sum_{tot} \end{bmatrix}} \right)}}} \\ {= {{\eta_{1}^{t}Q\; \eta_{1}} + {\eta_{2}^{t}Q\; \eta_{2}} + {2\eta_{1}^{t}P\; \eta_{2}} + {const}}} \end{matrix}\quad} & (2) \end{matrix}$

in which

Q=Σ _(tot) ⁻¹−(Σ_(tot)−Σ_(ac)Σ_(tot) ⁻¹Σ_(ac))⁻¹

P=Σ _(tot) ⁻¹Σ_(ac)(Σ_(tot)−Σ_(ac)Σ_(tot) ⁻¹Σ_(ac))⁻¹

Σ_(tot)=ΦΦ^(t)+Σ

Σ_(ac)=ΦΦ^(t)

where Φ and Σ are obtained from a training stage of GPLDA model, which can be extracted directly. The GPLDA model is denoted as

η_(r) =m+Φβ+ε _(r)  (3)

where η_(r) represents the voiceprint ivector of a r^(th) person, β represents a true value of the voiceprint of the r^(th) person, which is a hidden variable and cannot be obtained directly, Φ represents a transfer matrix, ε_(r) represents an observational error and is subject to the Gaussian distribution N(0,Σ)

Moreover, in this embodiment, the multi-classifier fusion is supported. In other words, during the authentication, for one kind of acoustic characteristic, multiple classification algorithms may be adopted, for example, SVM, GPLDA and the cosine distance may be used simultaneously, and then a score fusion may be performed on scores of these three classifiers to obtain a final score.

Moreover, in this embodiment, the fusion of multiple characteristics may be supported. In other words, multiple kinds of acoustic characteristics may be extracted, and then scores may be obtained using the same classifier or different classifiers and then these scores may be fused. For example, Mel Frequency Cepstral Coefficient (hereafter referred to as MFCC) and Perceptual Linear Predictive (hereafter referred to as PLP) of a speech may be extracted simultaneously, and then the voiceprint ivector based on MFCC and the voiceprint ivector based on PLP may be obtained, and then GPLDA classifier may be used to obtain two scores, and then these two scores are fused to obtain a score.

In step 204, it is determined whether the matching value is greater than or equals to a preset threshold. If yes, step 205 is executed; otherwise, step 206 is executed.

The preset threshold may be set according to the system performance and/or realization requirements in the specific implementations. A value of the above preset threshold will be not limited herein.

In step 205, the voiceprint authentication of the user is successful.

In step 206, the voiceprint authentication of the user is failed.

The authentication procedure is described above. It should be understood that, the authentication procedure described above can be used in occasions, such as a payment occasion and/or an identity authentication occasion, in which it is necessary to authenticate the user' identity.

In embodiments of the present disclosure, a registration procedure may be performed before the authentication to obtain the second voiceprint identity vector registered by the user. FIG. 3 is a flow chart showing a registration procedure in a voiceprint authentication method according to an embodiment of the present disclosure. As shown in FIG. 3, the registration procedure may include the following steps.

In step 301, a correspondence between the predilection character and the symbol is established and stored.

For example, the user may select any number from the numbers of 0˜9 as the predilection character according to his/her own predilection, for example, “1” and “6” may be selected as the predilection characters, and then may set that “1” corresponds to symbol “#” and “6” corresponds to symbol “@”. Then, the server needs to establish and store the correspondence between “1” and “#” and the correspondence between “6” and “@”.

In this embodiment, the symbol corresponding to the predilection character may be displayed in different displaying modes, which include but are not limit to the following forms.

1. Special characters, for example, the special characters in the keyboard, “!”, “@”, “#”, “$”, “%”, “̂”, “&”, “*”, “(”, or “)”, etc.

2. Chinese characters, for example, “

”, “

”, or “

”, etc.

3. Pictures, for example, an icon of a fruit, a small animal or a cartoon character, etc.

In step 302, at least one second character string is displayed to the user, in which a second character string includes the predilection character and the predilection character is displayed as the symbol corresponding to the predilection character in the second character string.

The second character string displayed to the user may include characters displayed in a form of plaintext, and the characters displayed in the form of plaintext are not identical.

In order to improve the safety and to prevent the fraud with sound recording, the at least one second character string displayed to the user is a completely random character string, and there is no rule to follow. In order to be able to cover a bigger sample space, the numbers in the second character string may appear only once, that is, one in the characters displayed in the form of plaintext in this second character string is not identical to another one in the characters displayed in the form of plaintext in this second character string. For example: the second character string may be “32149658”, but cannot be “32149628” with “2” appearing twice. Simultaneously, the second character string contains the predilection character preset by the user.

In step 303, at least one speech of the at least one second character string read by the user is obtained.

During the registration, the user reads the at least one second character string, in which predilection numbers may be displayed as specific symbols. For example, a character string is “32#49@58”, and the user needs to read as “32149658”.

In step 304, at least one voiceprint identity vector of the at least one speech is obtained.

Specifically, the at least one voiceprint identity vector of the at least one speech is obtained by: extracting an acoustic characteristic of the at least one speech; calculating a posteriori probability of the acoustic characteristic under a universal background model, in which the posteriori probability is subject to a Gaussian distribution and an expectation of the posteriori probability is the at least one voiceprint identity vector of the at least one speech.

In this embodiment, a voiceprint identity vector may be obtained by adopting the current advanced modeling method of identity vector (hereafter referred to as ivector) and this modeling method includes: a signal processing phase and a modeling phase. The signal processing phase includes signal pre-emphasis, voice activity detection (VAD), acoustic characteristic extraction and characteristic processing. During the modeling phase, a Baum-Welch statistics is performed on the acoustic characteristic (for example, MFCC) of each speech under the universal background model (hereafter referred to as UBM), and the posteriori probability of the acoustic characteristic may be calculated, which is subject to a Gaussian distribution, and the expectation of the posteriori probability is the ivector. For example, a speech u is segmented into L frames of acoustic characteristic set {y₁, y₂, . . . , y_(L)}, and the characteristic dimension is D.

0-order Baum-Welch statistics and 1-order Baum-Welch statistics may be calculated on UBM model including C Gaussian models, which may be denoted as follows:

$N_{c} = {\sum\limits_{t = 1}^{L}{P\left( {{cy_{t}},\Omega} \right)}}$ $F_{c} = {\sum\limits_{t = 1}^{L}{{P\left( {{cy_{t}},\Omega} \right)}\left( {y_{t} - m_{c}} \right)}}$

where c=1, 2, . . . , C represents an index of a Gaussian model, P(c|y_(t),Ω) represents the posteriori probability of an acoustic characteristic y_(t) on a c^(th) Gaussian model, and m_(c) represents an expectation of the c^(th) Gaussian model. The voiceprint ivector of the speech u may be obtained by the following formula:

η=(I+T′Σ ⁻¹ NT)⁻¹ T ^(t)Σ⁻¹ F

where N is a square matrix with a dimension being CD×CD and diagonal elements being N_(c)I(c=1, . . . , C), I is a unit diagonal matrix, F is a vector with a dimension being CD×1 and combined with all 1-order statistics F_(c), T and Σ are a transfer matrix and a covariance matrix of an extractor of the voiceprint ivector respectively, which are obtained during a training phase by a factor analysis and may be extracted directly, and operator (·)^(t) represents the matrix transposition.

In step 305, the second voiceprint identity vector registered by the user is obtained according to the at least one voiceprint identity vector of the at least one speech.

It is assumed that K character strings are adopted during the registration and a separate voiceprint ivector may be extracted from each character string. After the user reads all the K character strings, K voiceprint ivectors may be combined to obtain a unique voiceprint ivector of the user for representing the voiceprint characteristic of the user. This calculation may be shown as follows:

$\overset{\sim}{\eta} = {{norm}\left( {\frac{1}{K}{\sum\limits_{k = 1}^{K}{{norm}\left( \eta_{k} \right)}}} \right)}$

where operator norm (·) represents the length normalization, which is configured to convert a vector in the bracket into 1. Another expression

${\overset{\sim}{\eta}}^{\prime} = {\frac{1}{K}{\sum\limits_{k = 1}^{K}{{norm}\left( \eta_{k} \right)}}}$

may be adopted in this embodiment.

It should be understood that, the method for obtaining the voiceprint identity vector described above may be applied to obtain the voiceprint identity vector during the authentication.

In step 306, the second voiceprint identity vector registered by the user is stored.

Further, referring to FIG. 4, FIG. 4 is a flow chart showing a registration procedure in a voiceprint authentication method according to another embodiment of the present disclosure. As shown in FIG. 4, before step 304 this method further includes the following steps.

In step 401, a speech recognition is performed on the at least one speech.

In step 402, it is determined whether a speech of the symbol in the at least one speech corresponds to the predilection character. If yes, step 304 is executed; otherwise, step 403 is executed.

In step 403, an error is returned and the error indicates that the speech of the symbol in the at least one speech does not correspond to the predilection character.

In other words, for each character string read by the user, a text matching is performed in the server. Only when the user reads the predilection character in a correct way, a model is established; otherwise, the user needs to re-read the character string.

The voiceprint authentication method provided by embodiments of the present disclosure substantially utilizes the combination of voiceprint authentication and password to improve the user experience of the voiceprint payment system. The safety of voiceprint authentication may be improved by concealing some characters in the random character string, simultaneously, the psychological needs that the user does not want the password is displayed in a form of plaintext is satisfied. Unlike traditional lengthy password, the length of the concealed characters is short, which is very easy to remember by associating with special symbols.

The voiceprint authentication method provided by embodiments of the present disclosure improves the safety of payment. Since the voiceprint information of the user is used, which is difficult to simulate, the conveniences and safety of this method is improved, and it is unnecessary for the user to input the password and further to authenticate the message, thus improving the convenience and efficiency of payment. Compared with the simple voiceprint payment, this method provided by embodiments of the present disclosure combines the voiceprint and the user's predilection, which may achieve the cumulative effect of the traditional voiceprint authentication and the traditional password authentication. It may satisfy the psychological needs that the user does not want the password is displayed in a form of plaintext by concealing the characters according to the user's predilection, thus improving the user experience. In addition, the method provided by embodiments of the present disclosure improves the usability of the voiceprint password. Unlike the boring traditional voiceprint password, the voiceprint password in the embodiments of the present disclosure combines special characters, pictures or Chinese characters, such that the voiceprint password is friendlier, and the usability is improved.

FIG. 5 is a block diagram illustrating a voiceprint authentication apparatus according to an embodiment of the present disclosure. The voiceprint authentication apparatus in this embodiment may realize the procedure of the embodiment shown in FIG. 1. As shown in FIG. 5, the voiceprint authentication apparatus may include a displaying module 51, an obtaining module 52 and a determining module 53.

The displaying module 51 is configured to display a first character string to a user, in which the first character string includes a predilection character preset by the user, and the predilection character is displayed as a symbol corresponding to the predilection character in the first character string.

The symbol corresponding to the predilection character is preset by the user. For example, the user may select “1” and “6” as predilection characters from ten numbers of 0˜9, and set that “1” corresponds to symbol “#” and “6” corresponds to symbol “@”, so the character string “8291765” is displayed as “829#7@5”.

In this embodiment, the symbol corresponding to the predilection character may be displayed in different displaying modes, which include but are not limit to the following forms.

1. Special characters, for example, the special characters in the keyboard, such as, “!”, “@”, “#”, “$”, “%”, “̂”, “&”, “*”, “(”, or “)”, etc.

2. Chinese characters, for example, “

”, “

”, or “

”, etc.

3. Pictures, for example, an icon of a fruit, a small animal or a cartoon character, etc.

The obtaining module 52 is configured to obtain a speech of the first character string read by the user, and to obtain a first voiceprint identity vector of the speech of the first character string. In this example, the speech of “829#7@5” read by the user is obtained.

The determining module 53 is configured to compare the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication.

In the voiceprint authentication apparatus described above, the first character string displayed to the user by the displaying module 51 includes the predilection character preset by the user, in which the predilection character is displayed as the symbol corresponding to the predilection character in the first character string; then the obtaining module 52 obtains the speech of the first character string read by the user and the first voiceprint identity vector of the speech of the first character string, and the determining module 53 compares the first voiceprint identity vector with the second voiceprint identity vector registered by the user to determine the result of the voiceprint authentication. In this way, by comparing the user's voiceprint with the voiceprint generated during the registration to authenticate the user's identity, the safety of payment may be improved, and it is unnecessary to input the password and further to verify the password, thus improving the convenience and the efficiency of payment. Moreover, the character may be concealed according to the user's predilection, thus satisfying the psychological requirement that the user does not want the password to be displayed in a form of plaintext and further improving the user's experience and the availability of voiceprint password.

FIG. 6 is a block diagram illustrating a voiceprint authentication apparatus according to another embodiment of the present disclosure. Compared with the voiceprint authentication apparatus shown in FIG. 5, the voiceprint authentication apparatus shown in FIG. 6 may further include: a speech recognition module 54.

The speech recognition module 54 is configured to perform a speech recognition on the speech of the first character string to judge whether a speech of the symbol in the speech of the first character string corresponds to the predilection character before the obtaining module 52 obtains the first voiceprint identity vector.

The obtaining module 52 is specifically configured to obtain the first voiceprint identity vector if the speech recognition module 54 determines that the speech of the symbol in the speech of the first character string corresponds to the predilection character.

In other words, during the authentication, the user needs to read one character string, and the speech recognition module 54 may perform the speech recognition on the speech of this character string read by the user, and then judge whether the speech of the symbol in the speech of this character string corresponds to the predilection character. Only when the user reads the predilection character in a correct way, the speech recognition module 54 may further authenticate the speech of the character string, and then the obtaining module 52 obtains a voiceprint identity vector of the speech of the character string.

To prevent the fraud with sound recording, a completely random character string may be adopted during the authentication. In order to enable a character string read during the authentication to be close to the voiceprint identity vector registered by the user, the character string may include characters displayed in a form of plaintext. However, in this embodiment, the characters displayed in the form of plaintext may appear only once, i.e. one in the characters displayed in the form of plaintext is not identical to another one in the characters displayed in the form of plaintext and a predilection character concealed by a symbol may be not identical to anyone in the characters displayed in the form of plaintext (case one), or be identical to one in the characters displayed in the form of plaintext (case two). For example, when the predilection character is “1” corresponding to the symbol “#”, a character string may be displayed as “2#763985” (case one), or “2#763915” (case two).

In this embodiment, the determining module 53 may include a calculating sub-module 531 and an authentication result determining sub-module 532.

The calculating sub-module 531 is configured to calculate a matching value between the first voiceprint identity vector and the second voiceprint identity vector registered by the user. Specifically, when calculating the matching value, the calculating sub-module 531 may adopt the method provided in the embodiment shown in FIG. 2, which will not be elaborated herein. The authentication result determining sub-module 532 is configured to determine that the voiceprint authentication of the user is successful if the matching value calculated by the calculating sub-module 531 is greater than or equals to a preset threshold, and to determine that the voiceprint authentication of the user is failed if the matching value calculated by the calculating sub-module 531 is less than the preset threshold. The preset threshold may be set according to the system performance and/or realization requirements in the specific implementations. A value of the above preset threshold will be not limited herein.

Further, the voiceprint authentication apparatus described above may further include an establishing module 55 and a storage module 56.

The establishing module 55 is configured to establish a correspondence between the predilection character and the symbol before the displaying module 51 displays the first character string to the user.

The storage module 56 is configured to store the correspondence established by the establishing module 55.

For example, the user may select any number from the numbers of 0˜9 as the predilection character according to his/her own predilection, for example, “1” and “6” may be selected as the predilection characters, and then may set that “1” corresponds to symbol “#” and “6” corresponds to symbol “@”. Then, the establishing module 55 needs to establish the correspondence between “1” and “#” and the correspondence between “6” and “s”. The storage module 56 stores the correspondence established by the establishing module 55.

Then the displaying module 51 is further configured to display at least one second character string to the user, in which a second character string comprises the predilection character and the predilection character is displayed as the symbol corresponding to the predilection character in the second character string.

The character string (i.e., the first character string or the second character string) displayed by the displaying module 51 to the user includes characters displayed in a form of plaintext, and the characters displayed in the form of plaintext are not identical.

In order to improve the safety and to prevent the fraud with sound recording, the at least one second character string displayed by the displaying module 51 to the user is a completely random character string, and there is no rule to follow. In order to be able to cover a bigger sample space, the numbers in the second character string may appear only once, that is, one in the characters displayed in the form of plaintext in this second character string is not identical to another one in the characters displayed in the form of plaintext in this second character string displayed by the displaying module 51. For example: the second character string may be “32149658”, but cannot be “32149628” with “2” appearing twice. Simultaneously, the second character string contains the predilection character preset by the user.

The obtaining module 52 is further configured to obtain at least one speech of the at least one second character string read by the user, and to obtain at least one voiceprint identity vector of the at least one speech, and to obtain the second voiceprint identity vector registered by the user according to the at least one voiceprint identity vector of the at least one speech.

The storage module 56 is further configured to store the second voiceprint identity vector registered by the user.

Further, the speech recognition module 54 is further configured to perform a speech recognition on the at least one speech to judge whether a speech of the symbol in the at least one speech corresponds to the predilection character before the obtaining module 52 obtains the at least one voiceprint identity vector of the at least one speech. The obtaining module 52 is further configured to obtain the at least one voiceprint identity vector of the at least one speech if the speech recognition module 54 determines that the speech of the symbol in the at least one speech corresponds to the predilection character.

In other words, for each character string read by the user, a text matching is performed in the server. Only when the user reads the predilection character in a correct way, then the obtaining module 52 creates a model. Or else, the user needs to re-read aloud the character string.

In this embodiment, the obtaining module 52 is configured to obtain a voiceprint identity vector of a speech by extracting an acoustic characteristic of the speech; calculating a posteriori probability of the acoustic characteristic under a universal background model, in which the posteriori probability is subject to a Gaussian distribution, and an expectation of the posteriori probability is the voiceprint identity vector of the speech. Specifically, the method for obtaining a voiceprint identity vector of a speech by the obtaining module 52 may refer to the description in the embodiment shown in FIG. 3, which will not be elaborated herein.

The voiceprint authentication apparatus provided by embodiments of the present disclosure substantially utilizes the combination of voiceprint authentication and password to improve the user experience of the voiceprint payment system. The safety of voiceprint authentication may be improved by concealing some characters in the random character string, simultaneously, the psychological needs that the user does not want the password is displayed in a form of plaintext is satisfied. Unlike traditional lengthy password, the length of the concealed characters is short, which is very easy to remember by associating with special symbols.

The voiceprint authentication device provided by embodiments of the present disclosure improves the safety of payment. Since the voiceprint information of the user is used, which is difficult to simulate, the conveniences and safety of this method is improved, and it is unnecessary for the user to input the password and further to authenticate the message, thus improving the convenience and efficiency of payment. Compared with the simple voiceprint payment, this method provided by embodiments of the present disclosure combines the voiceprint and the user's predilection, which may achieve the cumulative effect of the traditional voiceprint authentication and the traditional password authentication. It may satisfy the psychological needs that the user does not want the password is displayed in a form of plaintext by concealing the characters according to the user's predilection, thus improving the user experience. In addition, the method provided by embodiments of the present disclosure improves the usability of the voiceprint password. Unlike the boring traditional voiceprint password, the voiceprint password in the embodiments of the present disclosure combines special characters, pictures or Chinese characters, such that the voiceprint password is friendlier, and the usability is improved.

Combination of Features

Features described above as well as those claimed below may be combined in various ways without departing from the scope hereof. The following examples illustrate possible, non-limiting combinations the present invention has been described above, it should be clear that many changes and modifications may be made to the process and product without departing from the spirit and scope of this invention:

(a) A voiceprint authentication method, comprising:

displaying a first character string to a user, wherein the first character string comprises a predilection character preset by the user, and the predilection character is displayed as a symbol corresponding to the predilection character in the first character string;

obtaining a speech of the first character string read by the user;

obtaining a first voiceprint identity vector of the speech of the first character string; and

comparing the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication.

(b) In the method denoted as (a), in which before obtaining a first voiceprint identity vector of the speech of the first character string, the method further comprises:

performing a speech recognition on the speech of the first character string to judge whether a speech of the symbol in the speech of the first character string corresponds to the predilection character; and

obtaining the first voiceprint identity vector if the speech of the symbol in the speech of the first character string corresponds to the predilection character.

(c) In the method denoted as (a) or (b), in which comparing the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication result comprises:

calculating a matching value between the first voiceprint identity vector and the second voiceprint identity vector;

determining that the voiceprint authentication is successful if the matching value is greater than or equals to a preset threshold; and

determining that the voiceprint authentication is failed if the matching value is less than the preset threshold.

(d) In the method denoted as (a) or (b), in which before displaying a first character string to a user, the method further comprises:

establishing and storing a correspondence between the predilection character and the symbol.

(e) In the method denoted as (d), in which after establishing and storing a correspondence between the predilection character and the symbol, the method further comprises:

displaying at least one second character string to the user, wherein a second character string comprises the predilection character and the predilection character is displayed as the symbol in the second character string;

obtaining at least one speech of the at least one second character string read by the user;

obtaining at least one voiceprint identity vector of the at least one speech;

obtaining the second voiceprint identity vector according to the at least one voiceprint identity vector; and

storing the second voiceprint identity vector.

(f) In the method denoted as (e), in which before obtaining at least one voiceprint identity vector of the at least one speech, the method further comprises:

performing a speech recognition on the at least one speech to judge whether a speech of the symbol in the at least one speech corresponds to the predilection character; and

obtaining at least one voiceprint identity vector if the speech of the symbol in the at least one speech corresponds to the predilection character.

(g) In the method denoted as (a), (e) or (f), in which obtaining a first voiceprint identity vector of the speech of the first character string comprises:

extracting an acoustic characteristic of the speech of the first character string; and

calculating a posteriori probability of the acoustic characteristic under a universal background model, wherein the posteriori probability is subject to a Gaussian distribution, and an expectation of the posteriori probability is the first voiceprint identity vector.

(h) In the method denoted as (a) or (e), in which the first character string displayed to the user comprises plaintext characters, and the plaintext characters are not identical to each other.

(i) A voiceprint authentication apparatus, comprising:

a displaying module, configured to display a first character string to a user, wherein the first character string comprises a predilection character preset by the user, and the predilection character is displayed as a symbol corresponding to the predilection character in the first character string;

an obtaining module, configured to obtain a speech of the first character string read by the user, and to obtain a first voiceprint identity vector of the speech of the first character string; and

a determining module, configured to compare the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication.

(j) In the apparatus denoted as (i), further comprising:

a speech recognition module, configured to perform a speech recognition on the speech of the first character string to judge whether a speech of the symbol in the speech of the first character string corresponds to the predilection character before the obtaining module obtains the first voiceprint identity vector,

in which the obtaining module is specifically configured to obtain the first voiceprint identity vector if the speech recognition module determines that the speech of the symbol in the speech of the first character string corresponds to the predilection character.

(k) In the apparatus denoted as (i) or (j), in which the determining module comprises:

a calculating sub-module, configured to calculate a matching value between the first voiceprint identity vector and the second voiceprint identity vector; and

an authentication result determining sub-module, configured to determine that the voiceprint authentication is successful if the matching value is greater than or equals to a preset threshold, and to determine that the voiceprint authentication is failed if the matching value is less than the preset threshold.

(l) In the apparatus denoted as (i) or (j), further comprising:

an establishing module, configured to establish a correspondence between the predilection character and the symbol before the displaying module displays the first character string to the user; and

a storage module, configured to store the correspondence.

(m) In the apparatus denoted as (l), in which

the displaying module is further configured to display at least one second character string to the user, in which a second character string comprises the predilection character and the predilection character is displayed as the symbol in the second character string;

the obtaining module is further configured to obtain at least one speech of the at least one second character string read by the user, and to obtain at least one voiceprint identity vector of the at least one speech, and to obtain the second voiceprint identity vector according to the at least one voiceprint identity vector; and

the storage module is further configured to store the second voiceprint identity vector.

(n) In the apparatus denoted as (m), in which

the speech recognition module is further configured to perform a speech recognition on the at least one speech to judge whether a speech of the symbol in the at least one speech corresponds to the predilection character before the obtaining module obtains the at least one voiceprint identity vector; and

the obtaining module is further configured to obtain the at least one voiceprint identity vector if the speech recognition module determines that the speech of the symbol in the at least one speech corresponds to the predilection character.

(o) In the apparatus denoted as (i), (m) or (n), in which the obtaining module is configured to obtain a first voiceprint identity vector of the speech of the first character string by:

extracting an acoustic characteristic of the speech of the first character string; and

calculating a posteriori probability of the acoustic characteristic under a universal background model, wherein the posteriori probability is subject to a Gaussian distribution, and an expectation of the posteriori probability is the first voiceprint identity vector.

(p) In the apparatus denoted as (i) or (m), in which the first character string displayed by the displaying module to the user comprises plaintext characters and the plaintext characters are not identical to each other.

(q) A program product having stored therein instructions that, when executed by one or more processors of a device, causes the device to perform the method denoted as (a)-(h).

In the description of the present disclosure, it should be understood that, terms such as “first” and “second” are used herein for purposes of description and are not intended to indicate or imply relative importance or significance. In addition, in the description of the present disclosure, the term “a plurality of” means two or more.

Any process or method described in a flow chart or described herein in other ways may be understood to include one or more modules, segments or portions of codes of executable instructions for achieving specific logical functions or steps in the process, and the scope of a preferred embodiment of the present disclosure includes other implementations, which should be understood by those skilled in the art.

It should be understood that each part of the present disclosure may be realized by the hardware, software, firmware or their combination. In the above embodiments, a plurality of steps or methods may be realized by the software or firmware stored in the memory and executed by the appropriate instruction execution system. For example, if it is realized by the hardware, likewise in another embodiment, the steps or methods may be realized by one or a combination of the following techniques known in the art: a discrete logic circuit having a logic gate circuit for realizing a logic function of a data signal, an application-specific integrated circuit having an appropriate combination logic gate circuit, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.

Those skilled in the art shall understand that all or parts of the steps in the above exemplifying method of the present disclosure may be achieved by commanding the related hardware with programs. The programs may be stored in a computer readable storage medium, and the programs comprise one or a combination of the steps in the method embodiments of the present disclosure when run on a computer.

In addition, each function cell of the embodiments of the present disclosure may be integrated in a processing module, or these cells may be separate physical existence, or two or more cells are integrated in a processing module. The integrated module may be realized in a form of hardware or in a form of software function modules. When the integrated module is realized in a form of software function module and is sold or used as a standalone product, the integrated module may be stored in a computer readable storage medium.

The storage medium mentioned above may be read-only memories, magnetic disks or CD, etc.

Reference throughout this specification to “an embodiment,” “some embodiments,” “one embodiment”, “another example,” “an example,” “a specific example,” or “some examples,” means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the present disclosure. Thus, the appearances of the phrases such as “in some embodiments,” “in one embodiment”, “in an embodiment”, “in another example,” “in an example,” “in a specific example,” or “in some examples,” in various places throughout this specification are not necessarily referring to the same embodiment or example of the present disclosure. Furthermore, the particular features, structures, materials, or characteristics may be combined in any suitable manner in one or more embodiments or examples.

Although explanatory embodiments have been shown and described, it would be appreciated by those skilled in the art that the above embodiments cannot be construed to limit the present disclosure, and changes, alternatives, and modifications can be made in the embodiments without departing from scope of the present disclosure. 

What is claimed is:
 1. A voiceprint authentication method, comprising: displaying a first character string to a user, wherein the first character string comprises a predilection character preset by the user, and the predilection character is displayed as a symbol corresponding to the predilection character in the first character string; obtaining a speech of the first character string read by the user; obtaining a first voiceprint identity vector of the speech of the first character string; and comparing the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication.
 2. The method according to claim 1, wherein, before obtaining a first voiceprint identity vector of the speech of the first character string, the method further comprises: performing a speech recognition on the speech of the first character string to judge whether a speech of the symbol in the speech of the first character string corresponds to the predilection character; and obtaining the first voiceprint identity vector if the speech of the symbol in the speech of the first character string corresponds to the predilection character.
 3. The method according to claim 1, wherein comparing the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication result comprises: calculating a matching value between the first voiceprint identity vector and the second voiceprint identity vector; determining that the voiceprint authentication is successful if the matching value is greater than or equals to a preset threshold; and determining that the voiceprint authentication is failed if the matching value is less than the preset threshold.
 4. The method according to claim 2, wherein comparing the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication result comprises: calculating a matching value between the first voiceprint identity vector and the second voiceprint identity vector; determining that the voiceprint authentication is successful if the matching value is greater than or equals to a preset threshold; and determining that the voiceprint authentication is failed if the matching value is less than the preset threshold.
 5. The method according to claim 1, wherein, before displaying a first character string to a user, the method further comprises: establishing and storing a correspondence between the predilection character and the symbol.
 6. The method according to claim 2, wherein, before displaying a first character string to a user, the method further comprises: establishing and storing a correspondence between the predilection character and the symbol.
 7. The method according to claim 5, wherein, after establishing and storing a correspondence between the predilection character and the symbol, the method further comprises: displaying at least one second character string to the user, wherein the at least one second character string comprises the predilection character and the predilection character is displayed as the symbol in the at least one second character string; obtaining at least one speech of the at least one second character string read by the user; obtaining at least one voiceprint identity vector of the at least one speech; obtaining the second voiceprint identity vector according to the at least one voiceprint identity vector; and storing the second voiceprint identity vector.
 8. The method according to claim 7, wherein, before obtaining at least one voiceprint identity vector of the at least one speech, the method further comprises: performing a speech recognition on the at least one speech to judge whether a speech of the symbol in the at least one speech corresponds to the predilection character; and obtaining the at least one voiceprint identity vector if the speech of the symbol in the at least one speech corresponds to the predilection character.
 9. The method according to claim 1, wherein obtaining a first voiceprint identity vector of the speech of the first character string comprises: extracting an acoustic characteristic of the speech of the first character string; and calculating a posteriori probability of the acoustic characteristic under a universal background model, wherein the posteriori probability is subject to a Gaussian distribution, and an expectation of the posteriori probability is the first voiceprint identity vector.
 10. The method according to claim 7, wherein obtaining a first voiceprint identity vector of the speech of the first character string comprises: extracting an acoustic characteristic of the speech of the first character string; and calculating a posteriori probability of the acoustic characteristic under a universal background model, wherein the posteriori probability is subject to a Gaussian distribution, and an expectation of the posteriori probability is the first voiceprint identity vector.
 11. The method according to claim 1, wherein the first character string displayed to the user comprises plaintext characters, and the plaintext characters are not identical to each other.
 12. A voiceprint authentication apparatus, comprising: a processor; and a memory for storing instructions executable by the processor, wherein the processor is configured to: display a first character string to a user, wherein the first character string comprises a predilection character preset by the user, and the predilection character is displayed as a symbol corresponding to the predilection character in the first character string; obtain a speech of the first character string read by the user, and obtain a first voiceprint identity vector of the speech of the first character string; and compare the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication.
 13. The apparatus according to claim 12, wherein the processor is further configured to: perform a speech recognition on the speech of the first character string to judge whether a speech of the symbol in the speech of the first character string corresponds to the predilection character before obtaining the first voiceprint identity vector, and obtain the first voiceprint identity vector if it is determined that the speech of the symbol in the speech of the first character string corresponds to the predilection character.
 14. The apparatus according to claim 12, wherein the processor is configured to compare the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication result by: calculating a matching value between the first voiceprint identity vector and the second voiceprint identity vector; determining that the voiceprint authentication is successful if the matching value is greater than or equals to a preset threshold; and determining that the voiceprint authentication is failed if the matching value is less than the preset threshold.
 15. The apparatus according to claim 12, wherein the processor is further configured to: establish a correspondence between the predilection character and the symbol before displaying the first character string to the user; and store the correspondence.
 16. The apparatus according to claim 12, wherein the processor is further configured to: display at least one second character string to the user, in which the at least one second character string comprises the predilection character and the predilection character is displayed as the symbol in the at least one second character string; obtain at least one speech of the at least one second character string read by the user, and to obtain at least one voiceprint identity vector of the at least one speech, and to obtain the second voiceprint identity vector according to the at least one voiceprint identity vector; and store the second voiceprint identity vector.
 17. The apparatus according to claim 16, wherein the processor is further configured to: perform a speech recognition on the at least one speech to judge whether a speech of the symbol in the at least one speech corresponds to the predilection character before obtaining the at least one voiceprint identity vector; and obtain the at least one voiceprint identity vector if it is determined that the speech of the symbol in the at least one speech corresponds to the predilection character.
 18. The apparatus according to claim 12, wherein the processor is configured to obtain a first voiceprint identity vector of the speech of the first character string by: extracting an acoustic characteristic of the speech of the first character string; and calculating a posteriori probability of the acoustic characteristic under a universal background model, wherein the posteriori probability is subject to a Gaussian distribution, and an expectation of the posteriori probability is the first voiceprint identity vector.
 19. The apparatus according to claim 12, wherein the first character string displayed to the user comprises plaintext characters, and the plaintext characters are not identical to each other.
 20. A program product having stored therein instructions that, when executed by one or more processors of a device, causes the device to perform the method, wherein the method comprises: displaying a first character string to a user, wherein the first character string comprises a predilection character preset by the user, and the predilection character is displayed as a symbol corresponding to the predilection character in the first character string; obtaining a speech of the first character string read by the user; obtaining a first voiceprint identity vector of the speech of the first character string; and comparing the first voiceprint identity vector with a second voiceprint identity vector registered by the user to determine a result of a voiceprint authentication. 